package com.example.customer01.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.example.customer01.pojo.Student;
import java.util.List;

/**
 * 学生服务接口
 */
public interface StudentService {
    /**
     * 创建新学生
     */
    Student createStudent(Student student);

    /**
     * 删除学生
     */
    boolean deleteStudent(Integer id);

    /**
     * 更新学生信息
     */
    Student updateStudent(Student student);

    /**
     * 根据ID获取学生
     */
    Student getStudentById(Integer id);

    /**
     * 获取所有学生
     */
    List<Student> getAllStudents();

    /**
     * 根据学号查询学生
     */
    Student getStudentByNumber(String studentNumber);

    /**
     * 获取学生信息（包含选课信息）
     */
    Student getStudentWithCourses(Integer studentId);

    /**
     * 分页获取学生列表
     * @param page 分页参数
     * @param keyword 搜索关键词
     * @return 分页结果
     */
    IPage<Student> getStudentPage(Page<Student> page, String keyword);


} 